﻿layui.config({
    base: "/js/"
}).use(['form', 'vue', 'ztree', 'layer', 'jquery', 'table', 'droptree', 'openauth', 'utils', 'laydate','laytpl'], function () {
    var form = layui.form,
        layer = layui.layer,
        $ = layui.jquery,
        laydate = layui.laydate;
    var laytpl = layui.laytpl;
    var table = layui.table;
    var openauth = layui.openauth;
    var toplayer = (top == undefined || top.layer === undefined) ? layer : top.layer;  //顶层的LAYER
    layui.droptree("/UserSession/GetOrgs", "#Organizations", "#OrganizationIds");



    //form.render('select', 'UserId'); 

    //日期
    laydate.render({
        elem: '#CreateTime',
        value: new Date()
    });
    //查询日期
    laydate.render({
        elem: '#SearchDate',
        value: new Date(),
        done: function (value, date) {
            //layer.alert('你选择的日期是：' + value + '<br>获得的对象是' + JSON.stringify(date))
            mainList({ CreateTime: value })
        }
       
    });


    $("#menus").loadMenus("WorkNote");
   
    //主列表加载，可反复调用进行刷新
    var config= {};  //table的参数，如搜索key，点击tree的id
    var mainList = function (options) {
        if (options != undefined) {
            $.extend(config, options);
        }
        //table.reload('mainList', {
        //    url: '/WorkNotes/LoadByGroup',
        //    where: config
        //});
        $.post('/WorkNotes/LoadByGroup',
            config,
            function (res) {
                
                if (res.data.length > 0) {
                    html = '';
                  
                    //第三步：渲染模版
                    var data = res;
                    console.log(res)
                    var getTpl = tplScript.innerHTML,
                        view = document.getElementById('contentHtml');
                    laytpl(getTpl).render(data, function (html) {
                        view.innerHTML = html;
                    });

                    $('.ddate').each(function (i, ele){
                        //console.log(ele.id) 
                        laydate.render({
                            elem:'#'+ele.id
                        });
                          
                    })
                    $('.layui-textarea').each(function (i, ele) {
                        $(this).on('blur', function () {
                            var dateContent = $('#date-' + ele.name).val();
                            var content = $('#content' + ele.name).val();
                            var remark = $('#remark' + ele.name).val();
                            console.log(ele);
                            //提交数据
                            var sendData = {
                                UserId: ele.name,
                                Content: content == 'null' || content==null ? '' : content,
                                CreateTime: dateContent,
                                Remark: remark
                            };
                            console.log(sendData)
                            $.post('/WorkNotes/AddOrUpdate',
                                sendData,
                                function (res) {
                                    //console.log(res);
                                    
                                },
                                "json");
                        });
                    })
                }
            },
            "json");
        //console.log(config)
    }


    //加载下拉框
    var UserSel = function () {
        var html = '';
        var dataOrg = { orgId: '08f41bf6-4388-4b1e-bd3e-2ff538b44b1b' };
        $.post('/UserManager/Load',
            dataOrg,
            function (res) {
                console.log(res.data);
                if (res.data.length > 0){
                    html = '<option value="">请选择</option> ';
                    $.each(res.data, function (key, item) {
                     
                        html += '<option value="' + item.Id + '">' + item.Name + '</option> ';
                      
                    })
                    console.log(html)
                    $("#UserId").html(html);
                    form.render('select'); 
                }
            },
            "json");
      
      
    }

    //生成图片
    var ToPic= function() {
        html2canvas(document.querySelector("#contentHtml")).then(canvas => {
            //document.body.appendChild(canvas);
            $("#divEdit").html(canvas);
            layer.open({
                title: '截图',
                area:["1600px", "600px"],
                type: 1,
                content: $('#divEdit')
            });
        });
        layer.msg('图片已生成');
    }

    //左边树状机构列表
    var ztree = function () {
        var url = '/UserSession/GetOrgs';
        var zTreeObj;
        var setting = {
            view: { selectedMulti: false },
            data: {
                key: {
                    name: 'Name',
                    title: 'Name'
                },
                simpleData: {
                    enable: true,
                    idKey: 'Id',
                    pIdKey: 'ParentId',
                    rootPId: 'null'
                }
            },
            callback: {
                onClick: function (event, treeId, treeNode) {
                    var sendData = { orgId: treeNode.Id, CreateTime: $("#SearchDate").val() };
                    console.log(sendData)
                    mainList(sendData);
                }
            }
        };
        var load = function () {
            $.getJSON(url, function (json) {
                zTreeObj = $.fn.zTree.init($("#tree"), setting);
                var newNode = { Name: "根节点", Id: null, ParentId: "" };
                json.push(newNode);
                zTreeObj.addNodes(null, json);
                mainList({ orgId: "" });
                zTreeObj.expandAll(true);
            });
        };
        load();
        return {
            reload: load
        }
    }();

    //添加（编辑）对话框
    var editDlg = function() {
        var vm = new Vue({
            el: "#formEdit"
        });
        var update = false;  //是否为更新
        var show = function (data) {
            var title = update ? "编辑信息" : "添加";
            layer.open({
                title: title,
                area: ["600px", "600px"],
                type: 1,
                content: $('#divEdit'),
                success: function() {
                    vm.$set('$data', data);
                },
                end: mainList
            });
            var url = "/WorkNotes/Add";
            if (update) {
                url = "/WorkNotes/Update"; 
            }
            //提交数据
            form.on('submit(formSubmit)',
                function(data) {
                    $.post(url,
                        data.field,
                        function(data) {
                            layer.msg(data.Message);
                        },
                        "json");
                    return false;
                });
        }
        return {
            add: function () { //弹出添加
                UserSel();
                update = false;
                show({
                    Id: ''
                });
            },
            update: function(data) { //弹出编辑框
                update = true;
                show(data);
            }
        };
    }();
    
    //监听表格内部按钮
    table.on('tool(list)', function (obj) {
        var data = obj.data;
        if (obj.event === 'detail') {      //查看
            layer.msg('ID：' + data.Id + ' 的查看操作');
        } 
    });


    //监听页面主按钮操作
    var active = {
        btnDel: function () {      //批量删除
            var checkStatus = table.checkStatus('mainList')
                , data = checkStatus.data;
            openauth.del("/WorkNotes/Delete",
                data.map(function (e) { return e.Id; }),
                mainList);
        }
        , btnAdd: function () {  //添加
            editDlg.add();
        }
         , btnEdit: function () {  //编辑
             var checkStatus = table.checkStatus('mainList')
               , data = checkStatus.data;
             if (data.length != 1) {
                 layer.msg("请选择编辑的行，且同时只能编辑一行");
                 return;
             }
             editDlg.update(data[0]);
         }

        , search: function () {   //搜索
            mainList({ key: $('#key').val() });
        }
        , btnRefresh: function() {
            mainList();
        },
        ToPic: function () {
            ToPic();
        }
    };

    $('.toolList .layui-btn').on('click', function () {
        var type = $(this).data('type');
        active[type] ? active[type].call(this) : '';
    });

    
    $('#checkboxView').on('click', function () {
        var type = $(this).checkStatus;
        console.log(type)
        if (type) { 
            $("input[name='contenttxt']").prop("display", "none");
            $("input[name='preview']").prop("display", ""); 
        }
        else {
           
            $("input[name='contenttxt']").prop("display", ""); 
            $("input[name='preview']").prop("display", "none"); 
        }
    });
    //监听页面主按钮操作 end
})